package com.example.accountbook;

import android.util.Log;
import android.view.View;
import android.view.ViewGroup;

import androidx.annotation.NonNull;
import androidx.viewpager.widget.PagerAdapter;

import java.lang.reflect.Array;
import java.util.ArrayList;
import java.util.List;

public class GuidePagerAdapter extends PagerAdapter {//继承滑动页适配器

    private ArrayList<View> pagerList =  null;//创建一个元素为View的list
    public GuidePagerAdapter(ArrayList<View>pagerList) {//构造器
        this.pagerList = pagerList;//获取传进来的list
    }

    @Override
    public int getCount() {//获取list元素数量方法
//        return 0;
        return pagerList.size();
    }

    @Override
    public boolean isViewFromObject(View view,Object object) {//判断当前显示的view是否正确
//        return false;
//        Log.d("Test","1");
        return view == object;//返回当前显式的view是否与列表中的对象一致
    }

    @Override
    public Object instantiateItem(ViewGroup container, int position) {//修改滑动页组件视图方法
//        return super.instantiateItem(container, position);
        View pagerView = pagerList.get(position);//获取当前位置的view
        container.addView(pagerView);//设置当前view为显式对象
//        Log.d("Test","3");
        return pagerView;//返回当前滑动页组件的视图
    }

    @Override
    public void destroyItem(ViewGroup container, int position,Object object) {//移除滑动页组件视图方法
//        super.destroyItem(container, position, object);
        container.removeView(pagerList.get(position));//移除当前位置的view
//        Log.d("Test","2");
    }
}
